================================================================================
RIGHT (GW) vs CENTER (HE) DIRECTORY -- BOTH FULLY DECODED
================================================================================
References (both reproduced byte-for-byte by make_ddp.py):
  HE center : blank_formatted_working.DDP
  GW right  : 256K_Right_Directory_Digital_Data_Pack.ddp

--------------------------------------------------------------------------------
WHAT'S THE SAME
--------------------------------------------------------------------------------
  - Block 0: identical boot block ("Initializing Media")
  - Block 1: same four directory entries
        FIRST DIR (vol label + 55 AA 00 FF signature @ dir offset 0x0D)
        BOOT      (logical block 0, len 1)
        DIRECTORY (logical block 1, len 1)
        BLOCKS LEFT (free-space hole from block 2)
  - Blocks 2-255: 0xE5 free-space fill
  - .ddp file is in LOGICAL block order; directory at file-block 1 for both

--------------------------------------------------------------------------------
WHAT DIFFERS (exactly three bytes-of-meaning, all in the directory block)
--------------------------------------------------------------------------------
  (1) BLOCKS LEFT free count @ dir offset 0x5F:
        HE = FE (254 free blocks)
        GW = FD (253 free blocks)   -- GW reserves one extra block

  (2) Directory block second half (dir 0x200-0x3FF):
        HE = 0xE5 fill
        GW = 0x00 fill

  (3) Directory block final byte (dir offset 0x3FF):
        HE = E5  (part of the fill)
        GW = FF  -- end-of-directory / reserved-last-block marker

  Interpretation: GW (right directory) reserves the LAST physical block (255)
  and marks it with 0xFF at the end of the directory block; that is why its
  free count is one lower than HE. The center format reserves nothing extra.

--------------------------------------------------------------------------------
IMPORTANT: format type is NOT fully encoded in the .ddp payload
--------------------------------------------------------------------------------
  The GW/HE TAPE HEADER ID (4757 vs 4845) and the MANGLE_NUM physical block
  placement are applied by the DRIVE or the emulator, not stored in the .ddp.
  The payload-level differences above are only the directory bookkeeping.

  So on the SD-DDP unit, presenting a pack AS gw-vs-he is a firmware behavior;
  the Build Guide states the SD-DDP uses HE. These two blank .ddp files give
  you the correct directory bookkeeping for each, but whether the unit honors
  GW depends on its firmware. On REAL TAPE via the drive 6801, both are fully
  supported by FORMAT6801.ASM (F_TYPE selects HE or GW).

--------------------------------------------------------------------------------
TO CREATE EITHER FORMAT ON THE UNIT, AS THE ORIGINAL 6801 DID (two steps)
--------------------------------------------------------------------------------
  STEP 1  Drive 6801 writes block headers   -> FORMAT6801.ASM (F_TYPE = HE/GW)
          [the lost capability; simulated, 128/128 headers valid both formats]
  STEP 2  Z80 writes boot + directory + E5   -> the format-specific directory
          decoded here (AJM File Manager already does this through EOS writes)

  A single "FORMAT (HE/GW)" feature = step 1 for the chosen type, then step 2
  writing the matching directory block above.

--------------------------------------------------------------------------------
FILES
--------------------------------------------------------------------------------
  blank_HE_center.ddp  byte-identical to the working HE pack
  blank_GW_right.ddp   byte-identical to the right-directory reference pack
  make_ddp.py          generator: `python3 make_ddp.py HE out.ddp`  or  GW
================================================================================
